UMTS (Universal Mobile Telecommunications System) defines standard interfaces between network nodes in order to aid interoperability between nodes from many vendors. Referring to FIG. 1, shown is a block diagram of a conventional UMTS network generally indicated by 5. In FIG. 1, a Radio Network Controller (RNC) 10 (two shown) forms part of the network 5. The RNC 10 is specified by three primary interfaces, Iub, Iur and Iu. Iub links 20 connect node Bs 30 with the RNC 10. Iur links 22 interconnect the RNCs 10 to enable radio diversity as MSs (Mobiles Stations) move throughout the network 5. Iu links 40 carry traffic between the RNCs 10 and a UMTS core network 50. In an Iu link there are two separate link types, Iu-CS and Iu-PS. Iu-CS links carry circuit switched traffic such as voice traffic between the RNC 10 and the UMTS core network 50. Iu-PS links carry packet (data) traffic between the RNCs 10 and the UMTS core network 50.
The standards that define UMTS are specified by a 3GPP (3rd Generation Partnership Program) and consist of a number of releases. The UMTS standards define many different types of Frame Protocols, one for each channel type: Dedicated Transport Channel (DTCH or DCH), Forward Access CHannel (FACH), Random Access Channel (RACH), Paging Channel (PCH), etc. Of these channel types, the bulk of a frame protocol bandwidth is consumed by the DCH and such a channel is used, in most circumstances, by UE (User Equipment) 35 such as MSs for example, to connect to the network 5. Data processed at the RNC 10 is processed through several layers for both an uplink 60 and a downlink 70. For any one of the RNCs 10, the uplink 60 is defined for transmission from one of the node Bs 30 to the UMTS core network 50 through the RNC 10 and the downlink 60 is defined for transmission from the UMTS core network 50 to the node B 30 through the RNC 10.
FIG. 2 shows an example set of protocol layers implemented by the RNC 10. As shown in FIG. 2, data traffic at the RNC 10 is processed through an Iu protocol layer 80, an RLC (Radio Link Control) layer 90, a MAC (Media Access Control) layer 100, and an Iub FP (Frame Protocol) layer 110.
The Iub FP layer 110 provides formatting of data frames on the downlink 70. For the uplink 60, the Iub FP layer 110 handles for example DHO (Diversity Hand-Off), payload integrity, and parsing.
In the network 5, the UE 35 transmit traffic of any type on a shared medium and a procedure must be invoked to distribute packet transmission among all users. This procedure is known as a MAC protocol. The MAC layer 100 is responsible for mapping logical channels into physical channels. The MAC layer 100 is also used for priority handling of the UE 35 and data flow of the UE 35, traffic monitoring, ciphering, multiplexing, etc. In UMTS W-CDMA (Wideband-Code Division Multiple Access), there are several packet transmission mechanisms possible according to packet size, priority level, quality of service, frequency of occurrence etc. In addition, UMTS effectively supports a wide range of services ranging from very low bit rate to very high bit rate and from constant bit rate to variable bit rate on a single connection. This is achieved using service multiplexing which allows efficient utilization of radio resources. All these issues are addressed by the MAC layer 100. The MAC layer 100 also provides ciphering (encryption) in some cases.
The RLC layer 90 is responsible for acknowledged or unacknowledged data transfer, and transparent data transfer. The RLC layer 90 is also responsible for accuracy of data sent by UE 35.
The Iu protocol layer 80 provides formatting of data frames on the uplink 60.
In conventional designs, frames being transmitted through the layers 80, 90, 100, 110 are processed through the same processing path using software. Software is used because the UMTS standards define many different types of frame protocols for each channel type, and each channel type is processed differently. With the use of software at the RNC 10 data frames of different types are processed in a single processing path; however, the use of such generic software requires extensive CPU resources at the RNC 10 especially when there is a large number of users. As such, processing data frames in a single processing path using currently available software at the RNC 10 is very inefficient and imposes a large demand on CPU usage. In addition, in UMTS typically the bulk of a frame protocol bandwidth is consumed by the DCH.
Processing of data of a single type could be done using mostly hardware; however, in UMTS since different types of frame protocols are used, the data associated with the DCH, which form the bulk of the frame protocol bandwidth, is processed using software and this further compromises efficiency at the RNC 10.
Another problem with current software implementations for processing data frames is in DHO (Diversity Hand-Off). In some cases, for the uplink 60 the RNC 10 receives data frames which originate, for example, from one of MSs as UE 35 but which flow through different paths in the network 5 and are received at the RNC 10 from different node Bs 30. The data frames are collected and a combined data frame often referred to as a best data frame is obtained from the collected data frames. This process is referred to as DHO and is handled by the Iub FP layer 110 using software in order to deal with the different frame protocols. The processing in software once again compromises the efficiency of the RNC 10 in processing data traffic.
Yet another problem with current software implementations for processing data frames is in scheduling processing of the data frames. For example, in DHO data frames are combined into a combined data frame and for such a procedure to work, the procedure must be scheduled in a manner which allows sufficient time to be given for the arrival of several data frames before they can be combined. Current implementations make use of software based timers implemented on a general purpose operating system. Such implementations impose strict real time requirements on the system running the software and requires management of sophisticated timing systems. As such, one particular limitation is that the current implementations have a low capacity. In addition, the current implementations are also expensive.